在增加了資料庫的同時,我們發現原本放置Tag的排版跑掉了,因此我們將會對tag進行分類。既然都要修改資料庫了,我們就重新檢視一次目前的資料庫,看看有什麼要修改的,並繪製資料庫的結構圖,方便之後維護使用。
今天預計會將Tag分成三種類別:素別(vegan_style
)、食物類型(category
)、食物風格(food_style
)
因此需要新增group
這個欄位,並且設定固定的選項。
最後我們會把目前資料庫的內容會製成圖。
在新增了所有Tag之後,我們發現版面變成這樣:
因此我們要把Tag分成三個類型。
我們將Tag
改成以下程式碼:
class Tag(models.Model):
vegan_style = 'V'
category = 'C'
food_style = 'F'
name = models.CharField(max_length=10)
value = models.CharField(max_length=30, default="None")
group = models.CharField(max_length=30, default=food_style, choices=[(vegan_style, 'vegan_style'),
(category, 'category'),
(food_style, 'food_style'), ])
這邊我們把之前的style
改成value
,更符合其功能。並新增group
用來之後前端分類使用。
這邊我們使用了之前沒有用過的參數choices
,使用這個參數的時候我們需要用list裝入選項,每個選項是一個tuple,包含兩項值,第一欄是Model中的實際值,第二欄則是開發者可讀的名稱。
記得如果有修改資料庫就需要在Terminal裡面執行以下兩個指令
python manage.py makemigrations
python manage.py migrate
打開admin就可以看到新的資料內容
最後我們把目前的資料庫內容會製成圖表:
台南不需要米其林
- 專案網址
- 專案程式碼
- 專案文件與鐵人賽文章
- 參賽團隊 台南巷弄美食獵人